Evolutionary Algorithms To use evolutionary algorithms your must: - - PDF document

evolutionary algorithms
SMART_READER_LITE
LIVE PREVIEW

Evolutionary Algorithms To use evolutionary algorithms your must: - - PDF document

Evolutionary Algorithms To use evolutionary algorithms your must: Fitness Define your problem Define your genotype Identify your phenotype Define the genotype -> phenotype translation Define crossover and mutation


slide-1
SLIDE 1

1

Fitness Evolutionary Algorithms

 To use evolutionary algorithms your must:

 Define your problem  Define your genotype  Identify your phenotype  Define the genotype -> phenotype translation  Define crossover and mutation operators  Define fitness  Determine selection criteria  Set population parameters

Fitness

Individual

Phenotype Genotype

problem

parameters

  • utput

Fitness

fitness

Fitness

 Fitness will guide convergence

 Solution will only be as good as the ability

  • f your fitness to define a good solution.

 Can be simple (optimization) or complex

(result of simulation).

Fitness and Bad Genomes

 Dealing with bad genomes

 Total Rejection  Genetic Repair

 fix in genetic mapping

 Genetic operators  Fitness Penalties.

 For yes/no solutions.

Fitness and Bad Genomes

 Fitness penalties

 Fitness(x) = f(x) - p(x)  Fitness(x) = f(x) * p(x)  F(x) = evaluation  P(x) = penalty.

slide-2
SLIDE 2

2

Fitness and Bad Genomes

 Guidelines for determining penalties [Gen,

Cheng]:

 Penalties which are functions of the distance from

feasibility are better performers than those which are merely functions of the number of violated constraints

 For a problem having few constraints and few full

solutions, penalties which are solely functions of the number of violated constraints are not likely to find solutions.

Fitness and Bad genomes

 Guidelines for determining penalties:

 Good penalty functions can be constructed

from two quantities, the maximum repair cost and the average repair cost.

 When penalty often underestimates the

repair cost, then the search may not find a solution.

 Essentially, the penalty is a measure of

distance to area of feasible solutions.

Fitness Scaling

 Motivation:

 In early generations, “super-individuals”

may dominate selection, slowing down progress.

 At later generations, if diversity is low,

competition is minimized.

Fitness Scaling

 Instead of using absolute fitness, f(x),

define a function F(x) and use:

 F(f(x)) as fitness in selection process:

 Typical scaling functions:

 Linear: F(x) = ax + b  Power: F(x) = xa  Exponential: F(x) = exp (-bx)

Selection and Fitness

 In choosing a selection scheme

 Overlapping or non-overlapping?  Selection mechanism for parents  Selection mechanisms for survival  Determine rates for crossover / mutation.  Adjust fitness to assure proper balance

Selection and Fitness

 Take home messages:

 Lots of selection / fitness options  Which is best still under debate  Most appropriate mechanism problem dependent.  You will have opportunity to experiment for your

particular problem.

 Questions.

slide-3
SLIDE 3

3

Fitness

 Subjective evaluation

 Artistic  Aesthetic  Human Intuition

Interactive Evolutionary Computation

 Evolutionary Algorithm that relies on

human evaluation as part of the fitness

 For a good survey, see [Takagi 2001]

Interactive Evolutionary Computation

 Evaluation performed on output, not

phenotype

Interactive Evolutionary Computing

 Mapping of psychological space towards

a goal:

Interactive Evolutionary Computing

 Mapping of psychological space towards

a goal:

 Ways to approach this:

 Model psychological processes (AI)  Parameterize psychological space  Ask a human.

Genetic Textures

 Karl Sims [Sims91] applied genetic

programming to images

 Images coded by a symbolic function of

(x,y), location of pixels in an image

 Color at each pixel determined by

evaluating function.

slide-4
SLIDE 4

4

Evolutionary Algorithms

 To use evolutionary algorithms your must:

 Define your problem  Define your genotype  Identify your phenotype  Define the genotype -> phenotype translation  Define crossover and mutation operators  Define fitness  Determine selection criteria  Set population parameters

Genetic Textures

 Problem:

 Create a program that will produce

interesting texture

 Basic genetic programming

 Phenotype: Program (LISP)  Genotype: parse tree.

Genetic Textures

 Function Set:

 Arithmetic (+, -, *, /)  Math functions (sin, cos, min, max, abs, etc)  LISP Control statement (If, then, else)  Color functions (hsv-to-rgb)  Vector functions (dot, cross, etc)  Noise functions (bw-noise, color-noise)  Image processing (blur, warp, grad, filter)

 Terminal set

 X, Y, constants (vector and scalar)

Genetic Textures

[Sims91]

Genetic Textures

 Mutation

Before crossover After crossover

crossover mutation

Before mutation After mutation

Genetic Texture

 Other Mutations

 Add random value to scalar value  Increase/decrease length of a vector

slide-5
SLIDE 5

5

Genetic Texture

 Fitness

 Determined by the user  At each “generation”, the user is presented

with a collection of generated textures

 The user chooses the one he/she likes the

best.

 The chosen textures are mutated to create

textures in next generation.

Genetic Texture

[Sims91]

Genetic Texture

(sin (+ (- (grad-direction (blur (if (hsv- to-rgb (warped-color-noise #(0.57 0.73 0.92) (/ 1.85 (warped-color-noise x y 0.02 3.08)) 0.11 2.4)) #(0.54 0.73 0.59) #(1.06 0.82 0.06)) 3.1) 1.46 5.9) (hsv- to-rgb (warped-color-noise y (/ 4.5 (warped-color-noise y (/ x y) 2.4 2.4)) 0.02 2.4))) x)) [Sims91]

Genetic textures Genetic texture

 Animation

 Add time to the terminal set

 3D Solid Textures

 Add z to the terminal set.

 Example: Primordial Dance

Genetic Textures

 Also implemented as a museum

installation

 Visitors judged “fitness” by choosing their

favorite genetically created images

 http://www.genarts.com/karl/genetic-

images.html

slide-6
SLIDE 6

6

Genetic creatures

 Galápagos

http://www.genarts.com/galapagos/index.html

Genetic textures

 Take home messages:

 Goal is to produce programs  Goal is to match target based on

“psychological space” of the artist.

 Fitness performed on evaluation of solution

by humans.

Applications of IEC

 [Takagi2001] references approx 250

different applications of IEC:

 Areas ranging from art to database to

speech processing to geophysics.

 Let me give a quick sampling

Lighting Design

 Computer

Graphics lighting settings to produce “decent lighting”

Music

 Produce melody and rhythm.  GENJAM

Hearing Aid Fitting

 Set the parameters of a hearing aid for

most effective use for a particular user

slide-7
SLIDE 7

7

Media based content retrival

 Media selection based on user

preference.

Art education

 Teach artistic sense.  Questions.

Challenges in IEC

 Main challenge

 Human fatigue -- must minimize

 Related Challenges

 Use small population size.  How to evaluate time variant individuals.

 Most IEC applications do not need too

many generations to converge.

Addressing the Challenges

 Use discrete fitness values for

evaluation

 Use 5-6 levels of evaluation rather than

100 (to reduce fatigue)

 Can add quantization noise to evaluation  Studies show that this is effective for 10-20

generations.

Addressing the challenges

 Prediction of fitness values

 Evolve a large population  Present only a small fraction of the

population for evaluation

 Choice of who to present based on an aux

fitness prediction function.

 Best n or representative from a cluster.

Addressing the challenges

 Interface for Dynamic Tasks

 Fatigue is especially problematic when

evaluating audio.

 Variety in sound samples presented  Display interface allowing user control of when

to play.

 But not too much user choice of what to play.  Tournament comparison is less tiresome.  Real time evaluation (GenJam)

slide-8
SLIDE 8

8

Addressing the challenges

 Acceleration of EC convergence

 Choose selection mechanisms that speed

convergence.

Addressing the challenges

 Combination of IEC and non-IEC

 E.g. use IEC and present to user every

100th generation.

Addressing the challenges

 Active

Intervention

 Visualized EC

IEC

 Take home messages:

 Fitness based on psychological parameters /

human preference

 Uses human evaluation as part of fitness  Must overcome human fatigue in evaluation.

 Really good survey paper!  Questions?