오토메타형식언어

Download Report

Transcript 오토메타형식언어

1. Genetic Algorithms: An Overview
 Objectives
-
Studying basic principle of GA
Understanding applications in prisoner’s dilemma &
sorting network
Outline
 Brief history of EC
 Appeal of evolution
 Biological terminology
 Search space and fitness landscape
 Elements of GA
 Simple GA
 GA and traditional search methods
 Some applications of GAs
 Two brief examples
 How do GAs work?
GA: An Overview
 EAs can be regarded as population-based, stochastic generate-
and-test algorithms
Two issues
How to generate offspring?
How to test (select) them?
 EAs represent a whole family of algorithms, with different
representation, search operators, etc
 EC covers at least four major areas
 EC is closely related to AI, CS, Operations Research, Machine
Learning, Engineering, etc
Brief History
 Rechenberg (1965, 1973): evolution strategies
 Schwefel (1975, 1977)
 Fogel, Owens & Walsh (1966): evolutionary programming
 John Holland: GA
 chromosomes
 natural selection
 genes & allele (0 or 1)
 crossover/recombination with haploid
 schema
Appeal of Evolution
 Searching through a huge number of possibilities for solutions
 computational protein engineering, financial market
 A computer program to be adaptive
 bottom-up paradigm: emergence of intelligence
 Designing innovative solutions to complex problems
 immune systems
 Rules of evolution is simple
 species evolve by means of random variation, followed by
natural selection where the fittest tend to survive and
reproduce
Biological Terminology
 chromosomes (strings of DNA): blueprint for the organism
 a gene encodes a trait (eye color, …)
 alleles: possible settings for a trait (blue, brown, …)
 genome: multiple chromosomes in a cell
 genotype: particular set of genes
 phenotype: its physical & mental characteristics
 diploid vs haploid
Search Spaces & Fitness Landscapes
 search space
 some collection of candidate solutions to a problem and
some notion of distance between candidate solutions
 fitness landscape
 a representation of the space of all possible genotypes
along with their fitnesses
 hill, peak, valley
Elements of GAs
 Fitness function
 GA operators
 selection
 crossover
 mutation
Simple GA: Generate-and-Test
 Loop
Generate a candidate solution
Test the candidate solution
Until a satisfactory solution is found or no more candidate
solutions can be found
Generator
Candidate
Solutions
…
Tester
GA and Traditional Search Methods
 Search for stored data
 Search for paths to goals
 Search for solutions
Some Applications of GAs
 Optimization
 Automatic programming
 Machine learning
 Economics
 Immune systems
 Ecology
 Population genetics
 Evolution and learning
 Social systems
Homework #1
 Investigate on encoding, operators and results of EC methods to
solve prisoner’s dilemma problem.
 Investigate on encoding, operators and results of EC methods to
solve sorting network problem.
Iterated Prisoner’s Dilemma (1)
Non-zero sum, non-cooperative games
The 2 player version
Player B
Player A
C
D
3
5
C 3
0
1
D 5 0 1
The purpose here is not to find the optimal solution for some
simplified conditions, but to study how to find it
Fitness evaluation
Entirely determined by the total payoff obtained through
playing against each other
The initial population was generated at random
Iterated Prisoner’s Dilemma (2)
 Representation of strategies
Own History
History Table
Recent Action
∙∙∙
Opponent’s History
Last Action
Recent Action
∙∙∙
Last Action
2N History
0
1
0
∙∙∙
1
l = 2 : Example History 11 01
Iterated Prisoner’s Dilemma (3)
 Test strategies
Strategy
Characteristics
Tit-For-Tat
Initially cooperate, and then follow opponent
Trigger
Initially cooperate. Once opponent defects, continuously
defect
AllD
Always defect
CDCD
Cooperate and defect over and over
CCD
Cooperate and cooperate and defect
Random
Random move
Example Strategies
0 0 1 0 1 1 0 0
CDCD 0 1 0 1 0 1 0 1
Trigger 0 0 0 1 1 1 1 1
CCD 0 0 1 0 0 1 0 0
AllD 1 1 1 1 1 1 1 1
Random 1 1 0 1 0 0 1 1
Tit-for-Tat
Sorting Networks (1)
 A sorting algorithm in essence, but can be represented
graphically for the ease of understanding
 Used widely in switching circuits, routing algorithms, and other
areas in interconnection networks
 Two issues
 Number of comparators
 Number of layers
 Best known networks with 16 inputs
Year
1962
1964
1969
1969
Designers
Bose, Nelson
Batcher, Knuth
Shapiro
Green
# comparators
65
63
62
60
still the best known today
Sorting Networks (2)
Comparators
unsorted
input
sorted
output
small
large
Graphical representation of a sorting network
input
element
unsorted
input
a layer
sorted
output
How do GAs Work? (1)
Traditional assumption
GA works by discovering, emphasizing, and recombining
good “building blocks” of solutions in a highly parallel fashion
Schemas = building blocks
A set of bit strings that can be described by a template made
up of ones, zeros, and asterisks (don’t cares)
Instance of H: strings fit the template H
Order: defined bits (non-asterisks) in a H
Defining length: distance between its outermost defined bits
How does GA process schemas?
A bit string of length l = an instance of 2^l different schemas
No. of schema instances in a population of n strings
2^l ~ n*2^l
How do GAs Work? (2)
Schema Theorem
P. 29: equation (1.2)  lower bound in destructive effects of
crossover and mutation
Desription: Growth of a schema from one generation to the
next
Implication: Short, low-order schemas whose average
fitness remains above the mean will receive exponentially
increasing numbers of samples over time
Reason: no. of samples of those schemas that are not
disrupted and remain above average in fitness increases by a
factor of U/F at each generation